Skip to content

Handle another case of incomplete reads from S3-type storage (OVH S3)#216

Merged
edward-evans-aiven merged 2 commits intomainfrom
bridgetb/handle-botocore-error
Dec 10, 2025
Merged

Handle another case of incomplete reads from S3-type storage (OVH S3)#216
edward-evans-aiven merged 2 commits intomainfrom
bridgetb/handle-botocore-error

Conversation

@bridgetb
Copy link
Contributor

@bridgetb bridgetb commented Dec 10, 2025

About this change - What it does

Ensure that any botocore ResponseStreamingErrors are handled and retried in a similar way to botocore IncompleteReadErrors.

Catch botocore.exceptions.ResponseStreamingError in get_contents_to_fileobj() and retry the get object request from the point before it failed.

Resolves: This type of error appears to be frequently raised when downloading larger files from OVH S3 storage with a later version of urllib3 (1.26-2.3, exact version unknown), resulting in a failure to download the file.

Why this way

* Ensure that any botocore ResponseStreamingErrors are handled and retried in a similar way to botocore IncompleteReadErrors.
* This type of error appears to be frequently raised when using OVH S3 storage, resulting in a failure to download the file.
@bridgetb bridgetb force-pushed the bridgetb/handle-botocore-error branch from 8e5d729 to 4bbbc44 Compare December 10, 2025 00:31
@edward-evans-aiven edward-evans-aiven merged commit b9e21b2 into main Dec 10, 2025
7 checks passed
@edward-evans-aiven edward-evans-aiven deleted the bridgetb/handle-botocore-error branch December 10, 2025 02:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants